Verifying a Concurrent Garbage Collector Using a Rely-Guarantee Methodology

نویسندگان

  • Yannick Zakowski
  • David Cachera
  • Delphine Demange
  • Gustavo Petri
  • David Pichardie
  • Suresh Jagannathan
  • Jan Vitek
چکیده

Concurrent garbage collection algorithms are an emblematic challenge in the area of concurrent program verification. In this paper, we address this problem by proposing a mechanized proof methodology based on the popular RelyGuarantee (RG) proof technique. We design a specific compiler intermediate representation (IR) with strong type guarantees, dedicated support for abstract concurrent data structures, and high-level iterators on runtime internals. In addition, we define an RG program logic supporting an incremental proof methodology where annotations and invariants can be progressively enriched. We formalize the IR, the proof system, and prove the soundness of the methodology in the Coq proof assistant. Equipped with this IR, we prove a fully concurrent garbage collector where mutators never have to wait for the collector.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Real-Time Garbage Collector for Embedded Applications in CLI

 We are working on scheduling of garbage collector as a concurrent thread for time-constrained applications in Common Language Infrastructure (CLI). We have implemented an incremental garbage collector with fine-grained write barrier in MONO, an opensource implementation of CLI. Our collector is based on existing conservative garbage collector of Boehm et al. By conducting benchmarking experim...

متن کامل

A Study of Lock-Free Based Concurrent Garbage Collectors for Multicore Platform

Concurrent garbage collectors (CGC) have recently obtained extensive concern on multicore platform. Excellent designed CGC can improve the efficiency of runtime systems by exploring the full potential processing resources of multicore computers. Two major performance critical components for designing CGC are studied in this paper, stack scanning and heap compaction. Since the lock-based algorit...

متن کامل

ParMarkSplit: A Parallel Mark-Split Garbage Collector Based on a Lock-Free Skip-List

This brief announcement provides a high level overview of a parallel mark-split garbage collector. Our parallel design introduces and makes use of an efficient concurrency control mechanism based on a lock-free skip-list design for handling the list of free memory intervals. We have implemented the parallel mark-split garbage collector in OpenJDK HotSpot as a parallel and concurrent garbage col...

متن کامل

Brief Announcement: ParMarkSplit: A Parallel Mark-Split Garbage Collector Based on a Lock-Free Skip-List

This brief announcement provides a high level overview of a parallel mark-split garbage collector. Our parallel design introduces and makes use of an efficient concurrency control mechanism based on a lock-free skip-list design for handling the list of free memory intervals. We have implemented the parallel mark-split garbage collector in OpenJDK HotSpot as a parallel and concurrent garbage col...

متن کامل

Nonintrusive Cloning Garbage Collection with Stock Operating System Support

It is well accepted that Garbage Collection simpliies programming, promotes modularity, and reduces development eeort. However it is commonly believed that these advantages do not counteract the price that has to be paid: excesive overheads, possible long pause times, and the need of modifying existing code. Even though there exist publically available garbage collectors that can be used in exi...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2017